package com.wx.service;

import com.wx.bean.GroupBean;
import com.wx.dao.IGroupDao;
import com.wx.service.impl.IGroupService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class GroupServiceImpl implements IGroupService {
    @Autowired
    IGroupDao iGroupDao;

    @Override
    public List<GroupBean> findAll() {
        List<GroupBean> list=iGroupDao.findAll();
        return list;
    }

    @Override
    public int groupUpdate(GroupBean groupBean) {

        int number=3;
        //执行修改小组前查询有没有这个人，如果count!=1就没有这个人则下一步
        int count=iGroupDao.teamLeaderNameAndCode(groupBean);
        if (count==1){
                int result=iGroupDao.groupUpdate(groupBean);
                return result;
        }else {
            return 2;
        }
    }

    @Override
    public int groupAdd(GroupBean groupBean) {
        int number=3;
        //执行添加小组前查询有没有这个人，如果count!=1就没有这个人则下一步
        int count=iGroupDao.teamLeaderNameAndCode(groupBean);
        if (count==1){
            //执行添加小组前查询有没有这个小组名或编号，如果number==1就有小组名或编号则添加不成功
            number=iGroupDao.groupNameAndCode(groupBean);
            if(number==0){
                int result=iGroupDao.groupAdd(groupBean);
                return result;
            }else {
                return 3;
            }
        }else {
            return 2;
        }
    }

    @Override
    public GroupBean findById(GroupBean groupBean) {
        return iGroupDao.findById(groupBean);
    }


    @Override
    public int deleteById(GroupBean groupBean) {
//        删除前判断是否还有人，如果count==0;没有了就下一步
        int count=groupBean.getTeamCount();
        Boolean iscount=count==0;
        if(iscount){
            int result=iGroupDao.deleteById(groupBean);
            return result;
        }else {
            return 2;
        }
    }
}
